The technology for controlling synchronism between a spindle and a servo axis (a shaft along a longitudinal axis line of the spindle) for tapping with a machining center or the like is well known, and this technology is disclosed for instance in Japanese Patent Laid-Open Publication No. HEI 63-89904.
FIG. 28 shows configuration of a numerical control apparatus disclosed in Japanese Patent Laid-Open Publication No. HEI 63-89904. A numerical control apparatus 600 comprises a central processing unit (described as CPU hereinafter) 601 for analyzing a machining program P, and a servo axis computing section 602, and has a servo axis driving section 603 for controlling movement along the vertical axis (Z shaft) for tapping, a spindle computing section 604, and a spindle driving section 605 for controlling rotation of a spindle 700 for tapping.
The spindle 700 is provided in a machine tool such as a machining center and is rotated and driven by a spindle motor 701 which is controlled by the spindle driving section 605. Attached to a tip of the spindle 700 is a tapping tool T without a float mechanism.
A feed screw mechanism 702 is connected to the spindle 700, and the spindle 700 moves along the axial direction (in the direction along the Z shaft) due to rotation of the feed screw 703. The feed screw 703 is rotated and driven by a servo axis motor 704 controlled by the servo axis driving section 603.
A work W to be tapped is placed on a work table 705.
It should be noted that the servo axis computing section 602 and the spindle computing section 604 are synchronized to each other according to a synchronous signal Ssy.
When the CPU 601 interprets an instruction for tapping from a machining program P, it makes a gain and a time constant for a servo axis control system identical to a gain and a time constant for a spindle control system according to a gain and a time constant for the servo axis control system previously set, computing data for rotation of the spindle and data for movement of the servo axis, outputs the data for rotation of the spindle to the spindle computing section 604, outputs data for movement of the servo axis to the servo axis computing section 602, controls interpolation for the spindle (C shaft) and the servo axis (Z shaft) according to the data for rotation of the spindle and data for movement of the servo axis, and transfers the interpolation data to the spindle computing section 604 and to the servo axis computing section 602.
The spindle computing section 604 computes an instruction for acceleration/deceleration of the spindle motor according to the data for rotation of the spindle given from the CPU 601, and outputs the instruction for acceleration/deceleration to the spindle driving section 605. With this operation, the spindle motor 701 starts rotation, and a tapping tool T of the spindle 700 rotates.
The servo axis computing section 602 computes an instruction for acceleration/deceleration of the servo axis motor 704 according to the same instruction for acceleration/deceleration of the spindle motor 701 and the data for movement of the servo axis given from the CPU 601, and outputs the instruction to the servo axis driving section 603 in synchronism to the spindle control system. With this operation, the servo axis motor 704 starts rotation, and the tapping tool T of the spindle 700 goes down due to rotation of the feed screw 703. Then the tapping tool T goes into a lower hole h of the work W and executes tap cutting operation to make a female screw on an internal surface of the lower hole.
When tapping has been executed by a specified length, the spindle computing section 604 outputs an instruction for acceleration/deceleration of the spindle motor 701 to the spindle driving section 605, and makes the spindle motor rotate in the reverse direction to make the tapping tool T rotate in the reverse direction. In synchronism to this operation, the servo axis computing section 602 outputs an instruction for acceleration/deceleration of the servo axis motor 704 to the servo axis driving section 603, and makes the servo axis motor 704 rotate in the reverse direction to move the tapping tool T upward. With this operation, the tapping tool T is pulled off from the work W.
In the tapping operation as described above, to make shorter the cycle time, a rotational speed of the spindle motor 701 should reach a specified high rotational speed within a short period of time. Namely a slope of acceleration/deceleration (acceleration) during the tapping operation should be make larger.
However, in a numerical control apparatus based on the conventional technology, a slope of acceleration/deceleration is constant, and acceleration or deceleration is executed with a linear acceleration/deceleration pattern, and if a slope of acceleration or deceleration in tapping is made larger, as inertia in the spindle system becomes larger as compared to that in the servo axis system, a follow-up delay of the spindle motor from the servo axis motor may easily occur at a point of time just before start of acceleration from the stopped or just before end of acceleration (for just before start of constant speed rotation), or at a point of time just before start of deceleration from constant speed rotation or just before end of deceleration (start of stopped state), which makes it difficult to maintain the synchronized state. For this reason, a positional error between the spindle motor and the servo axis motor becomes larger with thread of tap crushed, and a rotational speed of a spindle motor cannot substantially be raised within a short period of time in tapping.
Also in a numerical control apparatus based on the conventional technology, a rotational speed during an tap pulling-off operation can be made higher for an efficient tapping operation as compared to that during a tap cutting operation, but if a rotational speed of the spindle motor is made faster within a short period of time, a positional error between the spindle motor and the servo axis motor becomes larger, so that a speed of a tap pulling-off operation can not substantially be made faster.
Also in a numerical control apparatus based on the conventional technology, though inertia of a spindle during an operating for accelerating a spindle motor is different from inertia of the spindle during an operation for decelerating the spindle motor, the acceleration pattern is the same as the deceleration pattern, so that either one of the accelerating operation or the decelerating operation is controlled with an acceleration pattern or a deceleration pattern which is not optimal, which disadvantageously causes a loss time in a cycle time.